[Tableau Server]旧バージョンから2018.3へアップグレードしてみた #tableau
はじめに
ごきげんよう。DI部@大阪オフィスのtamaです。
Tableau Serverも頻繁に新バージョンがリリースされるようになり、「そろそろウチのアップグレードしなきゃ…」とお考えのサーバー管理者の方もチラホラいるのではないでしょうか。しかし「ウチのTableau Server、結構古いんやけど、問題なくアップグレードできますやろか…」と心配な方もチラホラいるのではないでしょうか。
というわけで、今回は結構古いバージョンであるTableau Server 10.1から2018.3へアップグレードしてみた、という内容のエントリをお届けします。
とりあえずTableau Server10.1を準備
インストール先の環境
- AWS EC2
- C5.4xlarge
- Windows Server 2016
インストールする
全部初期設定でインストールします。
バックアップをとっておく
tabadminコマンドでバックアップを取得します。
バックアップの前に、復元した時にわかるように、適当にユーザーを追加したりビューをパブリッシュしたりしておきます。
C:\Program Files\Tableau\Tableau Server\10.1\bin>tabadmin backup 10-1.tsbak ===== Using as backup tmp directory: C:/ProgramData/Tableau/Tableau Server/data/tabsvc/temp (free space: 78.19 GB) ===== Setting inheritance on C:/ProgramData/Tableau/Tableau Server/data/tabsvc/pgsql/data ===== Setting inheritance completed on C:/ProgramData/Tableau/Tableau Server/data/tabsvc/pgsql/data ===== Cleaning entries from http_requests log older than 7 days -- Deleted 0 rows ===== Backing up database data with tblwgadmin ===== Backing up dataengine extracts ===== Backup of database data done ===== Backup of dataengine extracts done ===== Backup written to C:/Program Files/Tableau/Tableau Server/10.1/bin/10-1.tsbak
いきなりTableau Server 2018.3へアップグレードしてみる
いきなりインストーラーを起動してみる
従来のアップグレードと違い、既存のTableau Serverを先にアンインストールしていないとダメとのことです。
まずTableau Server 10.1をアンインストール
Windowsの「アプリと機能」から普通にアンインストールします。
改めてTableau Server 2018.3をインストール
インストールしてみます。
途中までは問題なくウィザードが進みましたが…しかし失敗!!
本来であれば、アップグレードスクリプトが実行されるのですが、それが実行されず、インストール作業が止まってしまい、うんともすんとも言わない状態に…。
いきなり2018.3がダメだった理由
Tableauに限りませんが、何らかのシステムというのは、アップデートしていくたびに仕様が変わっていきます。そのバージョンの差異が大きいと、アップグレードがうまくいかないことはよくあります。
Tableau Serverの場合、まず10.5で抽出ファイルの形式が「Hyper」というものに変わりました。そして、2018.2からは「TSM」というサーバー管理の新しい仕組みが登場しました。10.1→2018.3の間には、これらの非常に大きな変更があったため、一気にアップグレードしようとしても、差異が大きすぎてうまくいかなかったのでは…と考えられます。
「一気にアップグレードできなければ段階を踏んでアップグレードすればいいじゃない」ということで、次は一気にアップグレードするのではなく、一度真ん中あたりのバージョンに上げてから、2018.3にアップグレードしてみたいと思います。
2018.1を挟む「2段階」でアップグレードしてみる
2018.1は、TSMが搭載された2018.2の直前のバージョンなので、間に挟むには丁度いいかと思った次第です。
まずは2018.1へアップグレード
インストール
先程と同様、まずは10.1の環境を用意します。そして、今回はまず2018.1にアップグレードします。アップグレードの方法は簡単です。10.1の環境で2018.1のインストーラーを実行するだけです。
問題なくアップグレードできました。
特に復元作業を行わなくても、データは引き継がれています。
バックアップ取得
念の為、2018.1の時点のバックアップを取得しておきます(ついでに2018.1の状態が分かるように、適当にプロジェクト等を用意)。
そして2018.3へ…
さあいよいよ2018.3にアップグレードします。
2018.1をアンインストール
「いきなりTableau Server 2018.3へアップグレード」の時と同様、まずは既存Tableau Serverをアンインストールします。
2018.3をインストール
そしてインストーラーを起動。
単一のTableau Serverとしてインストールするので、上の項目を選びます。
アップグレードの方法は自動化(Automatically〜)を選びます(下のチェックボックスはヘルプが出るだけです)。
アップグレードスクリプトが実行されます。
TSMが起動、設定項目を一通り入力し、Tableau Serverが立ち上がるのを待ちます。そして、TSMのプロセスステータス画面まで来ました。
上記画面の右上のメニューからTableau Serverを再起動します。…すると!
Tableau Server 2018.3のアップグレードに成功しました!データもそのまま引き継がれております。
ちなみにライセンス状態も変わらず維持されております。
バックアップからの復元
アップグレードはできましたが、それぞれの過去バージョン時点で取得したバックアップファイルは、果たして2018.3に対して使用することができるのでしょうか?
10.1のバックアップを2018.3で使ってみた
>tsm maintenance restore -f 10-1.tsbak -r '10-1.tsbak' の復元中... サーバー側のファイル名 '10-1.tsbak' を使用しています ジョブ ID '4'、タイムアウトは 2880 分です。 3% - 認証方法の比較に失敗しました。 6% - 一時バックアップ ファイルを削除しています。 9% - すべてのノードで復元データをクリーンアップ中。 12% - 復元サービスをアンインストール中。 16% - すべてのサービスを有効化しています。 19% - サービスの開始を待機しています。 '10-1.tsbak' のバックアップの復元に失敗しました。
アップグレードと同じく、バックアップファイルからの復元においても、バージョン差異が大きいと失敗するようです。
2018.1のバックアップを2018.3で使ってみた
こちらは問題なく成功。2018.1の状態にキレイに復元されました(スクリーンショット撮り忘れましたすみません…)。
まとめ
Tableau Serverのアップグレード
- 10.1→2018.3
- 失敗する
- 10.1→2018.1→2018.3
- 成功する
Tableau Serverのバックアップファイルを使用した復元
- 10.1のバックアップ→2018.3へ復元
- 失敗する
- 2018.1のバックアップ→2018.3へ復元
- 成功する
- 10.5のバックアップ→2018.3へ復元
- 成功する
- 本エントリに書いていませんが、10.5のバックアップファイルも試しました。
おわりに
Tableau Serverの比較的古いバージョンから、2018.3にアップグレードするエントリでした。さすがにバージョンが古すぎるとスッとアップグレードはできない結果となりましたが、その場合は間のバージョンを挟むことで問題なくアップグレードが成功します。同一インスタンスの場合は、データもそのまま引き継がれるので、落ち着いてアップグレード作業をしましょう。